[INFO] cloning repository https://github.com/FastTrackStudios/better-auth
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/FastTrackStudios/better-auth" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFastTrackStudios%2Fbetter-auth", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFastTrackStudios%2Fbetter-auth'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e32926ba4a7546f3405b78e5dbb19dbe3a0d2f02
[INFO] fixing FastTrackStudios/better-auth against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFastTrackStudios%2Fbetter-auth" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/FastTrackStudios/better-auth
[INFO] removed 0 missing examples
[INFO] finished tweaking git repo https://github.com/FastTrackStudios/better-auth
[INFO] tweaked toml for git repo https://github.com/FastTrackStudios/better-auth written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/FastTrackStudios/better-auth on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/FastTrackStudios/better-auth already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/Codys-Wright/vox`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/bearcove/moire`
[INFO] [stderr]      Locking 52 packages to latest compatible versions
[INFO] [stderr]       Adding arrayref v0.3.9
[INFO] [stderr]       Adding arrayvec v0.7.7
[INFO] [stderr]       Adding async-channel v2.5.0
[INFO] [stderr]       Adding async-lock v3.4.2
[INFO] [stderr]       Adding blake3 v1.8.5
[INFO] [stderr]       Adding camino v1.2.3
[INFO] [stderr]       Adding const-fnv1a-hash v1.1.0
[INFO] [stderr]       Adding constant_time_eq v0.4.2
[INFO] [stderr]       Adding cpufeatures v0.3.0
[INFO] [stderr]       Adding ctor v0.2.9
[INFO] [stderr]       Adding event-listener-strategy v0.5.4
[INFO] [stderr]       Adding facet v0.44.5
[INFO] [stderr]       Adding facet v0.45.0
[INFO] [stderr]       Adding facet-cbor v0.3.1 (https://github.com/Codys-Wright/vox?rev=ccb46b5416100d38430cb082d71bf0377428c241#ccb46b54)
[INFO] [stderr]       Adding facet-core v0.44.4
[INFO] [stderr]       Adding facet-core v0.45.0
[INFO] [stderr]       Adding facet-dessert v0.44.6
[INFO] [stderr]       Adding facet-format v0.44.7
[INFO] [stderr]       Adding facet-json v0.44.7
[INFO] [stderr]       Adding facet-macro-parse v0.44.4
[INFO] [stderr]       Adding facet-macro-parse v0.45.0
[INFO] [stderr]       Adding facet-macro-types v0.44.4
[INFO] [stderr]       Adding facet-macro-types v0.45.0
[INFO] [stderr]       Adding facet-macros v0.44.4
[INFO] [stderr]       Adding facet-macros v0.45.0
[INFO] [stderr]       Adding facet-macros-impl v0.44.4
[INFO] [stderr]       Adding facet-macros-impl v0.45.0
[INFO] [stderr]       Adding facet-path v0.44.5
[INFO] [stderr]       Adding facet-reflect v0.44.6
[INFO] [stderr]       Adding facet-solver v0.44.6
[INFO] [stderr]       Adding facet-value v0.44.7
[INFO] [stderr]       Adding gloo-timers v0.3.0
[INFO] [stderr]       Adding hashbrown v0.17.1
[INFO] [stderr]       Adding iddqd v0.3.18
[INFO] [stderr]       Adding impls v1.0.3
[INFO] [stderr]       Adding moire v1.0.0 (https://github.com/bearcove/moire?rev=13eac79#13eac79c)
[INFO] [stderr]       Adding moire-macros-noop v1.0.0 (https://github.com/bearcove/moire?rev=13eac79#13eac79c)
[INFO] [stderr]       Adding moire-runtime v1.0.0 (https://github.com/bearcove/moire?rev=13eac79#13eac79c)
[INFO] [stderr]       Adding moire-tokio v1.0.0 (https://github.com/bearcove/moire?rev=13eac79#13eac79c)
[INFO] [stderr]       Adding moire-trace-capture v1.0.0 (https://github.com/bearcove/moire?rev=13eac79#13eac79c)
[INFO] [stderr]       Adding moire-trace-types v1.0.0 (https://github.com/bearcove/moire?rev=13eac79#13eac79c)
[INFO] [stderr]       Adding moire-types v1.0.0 (https://github.com/bearcove/moire?rev=13eac79#13eac79c)
[INFO] [stderr]       Adding moire-wasm v1.0.0 (https://github.com/bearcove/moire?rev=13eac79#13eac79c)
[INFO] [stderr]       Adding moire-wire v1.0.0 (https://github.com/bearcove/moire?rev=13eac79#13eac79c)
[INFO] [stderr]       Adding mutants v0.0.3
[INFO] [stderr]       Adding smallvec v2.0.0-alpha.12
[INFO] [stderr]       Adding structstruck v0.5.1
[INFO] [stderr]       Adding unsynn v0.3.0
[INFO] [stderr]       Adding venial v0.5.0
[INFO] [stderr]       Adding vox-postcard v0.3.1 (https://github.com/Codys-Wright/vox?rev=ccb46b5416100d38430cb082d71bf0377428c241#ccb46b54)
[INFO] [stderr]       Adding vox-schema v0.3.1 (https://github.com/Codys-Wright/vox?rev=ccb46b5416100d38430cb082d71bf0377428c241#ccb46b54)
[INFO] [stderr]       Adding vox-types v0.3.1 (https://github.com/Codys-Wright/vox?rev=ccb46b5416100d38430cb082d71bf0377428c241#ccb46b54)
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded impls v1.0.3
[INFO] [stderr]   Downloaded iddqd v0.3.18
[INFO] [stderr]   Downloaded smallvec v2.0.0-alpha.12
[INFO] [stderr]   Downloaded structstruck v0.5.1
[INFO] [stderr]   Downloaded facet-dessert v0.44.6
[INFO] [stderr]   Downloaded facet-macros v0.45.0
[INFO] [stderr]   Downloaded glob-match v0.2.1
[INFO] [stderr]   Downloaded facet-macros v0.44.4
[INFO] [stderr]   Downloaded facet-macro-types v0.45.0
[INFO] [stderr]   Downloaded mutants v0.0.3
[INFO] [stderr]   Downloaded facet-macro-types v0.44.4
[INFO] [stderr]   Downloaded facet-macro-parse v0.44.4
[INFO] [stderr]   Downloaded facet-path v0.44.5
[INFO] [stderr]   Downloaded facet-macro-parse v0.45.0
[INFO] [stderr]   Downloaded totp-rs v5.7.0
[INFO] [stderr]   Downloaded oas3 v0.20.1
[INFO] [stderr]   Downloaded facet-solver v0.44.6
[INFO] [stderr]   Downloaded venial v0.5.0
[INFO] [stderr]   Downloaded bon v3.9.0
[INFO] [stderr]   Downloaded facet-value v0.44.7
[INFO] [stderr]   Downloaded facet-macros-impl v0.45.0
[INFO] [stderr]   Downloaded facet-macros-impl v0.44.4
[INFO] [stderr]   Downloaded bon-macros v3.9.0
[INFO] [stderr]   Downloaded unsynn v0.3.0
[INFO] [stderr]   Downloaded facet-core v0.44.4
[INFO] [stderr]   Downloaded facet-json v0.44.7
[INFO] [stderr]   Downloaded facet v0.45.0
[INFO] [stderr]   Downloaded facet v0.44.5
[INFO] [stderr]   Downloaded facet-core v0.45.0
[INFO] [stderr]   Downloaded facet-format v0.44.7
[INFO] [stderr]   Downloaded facet-reflect v0.44.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] cdfd997c649fe0d68bc0e5071c6c120024792b791515482c680ace43fdfc5aef
[INFO] running `Command { std: "docker" "start" "cdfd997c649fe0d68bc0e5071c6c120024792b791515482c680ace43fdfc5aef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cdfd997c649fe0d68bc0e5071c6c120024792b791515482c680ace43fdfc5aef" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cdfd997c649fe0d68bc0e5071c6c120024792b791515482c680ace43fdfc5aef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cdfd997c649fe0d68bc0e5071c6c120024792b791515482c680ace43fdfc5aef" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking base64ct v1.8.3
[INFO] [stderr]     Checking pem v3.0.6
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking glob-match v0.2.1
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]     Checking nonzero_ext v0.3.0
[INFO] [stderr]     Checking base32 v0.5.1
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]     Checking clap_builder v4.5.60
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]     Checking unarray v0.1.4
[INFO] [stderr]     Checking semver v1.0.27
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking similar v2.7.0
[INFO] [stderr]     Checking unicode-ident v1.0.24
[INFO] [stderr]     Checking proc-macro2 v1.0.106
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking uuid v1.21.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]     Checking quanta v0.12.6
[INFO] [stderr]     Checking tempfile v3.26.0
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking rand_xorshift v0.4.0
[INFO] [stderr]     Checking console v0.15.11
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking rusty-fork v0.3.1
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking cookie v0.18.1
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking better-auth-derive v0.10.0 (/opt/rustwide/workdir/crates/derive)
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking governor v0.10.4
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking proptest v1.10.0
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking clap v4.5.60
[INFO] [stderr]     Checking simple_asn1 v0.6.4
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling validator_derive v0.19.0
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling bon-macros v3.9.0
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking jsonwebtoken v9.3.1
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking insta v1.46.3
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking validator v0.19.0
[INFO] [stderr]     Checking totp-rs v5.7.0
[INFO] [stderr]     Checking oas3 v0.20.1
[INFO] [stderr]     Checking better-auth-core v0.10.0 (/opt/rustwide/workdir/crates/core)
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking bon v3.9.0
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking better-auth-api v0.10.0 (/opt/rustwide/workdir/crates/api)
[INFO] [stdout] warning: unused import: `better_auth_core::entity::AuthUser`
[INFO] [stdout]   --> crates/api/src/plugins/vox_rpc/mod.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | use better_auth_core::entity::AuthUser;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> crates/api/src/plugins/ghost_user/mod.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |         ctx: &AuthContext<DB>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `better_auth_core::entity::AuthUser`
[INFO] [stdout]   --> crates/api/src/plugins/vox_rpc/mod.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | use better_auth_core::entity::AuthUser;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking better-auth v0.10.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/property_tests.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | /// Passwords shorter than `password_min_length` (8) must be rejected (400).
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/property_tests.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / /// Passwords at or above `password_min_length` (8) should not trigger a
[INFO] [stdout] 47 | | /// "too short" error.  They may still fail for other reasons (duplicate
[INFO] [stdout] 48 | | /// email, etc.) but they must NOT return the min-length error message.
[INFO] [stdout]    | |_----------------------------------------------------------------------^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/property_tests.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 | /// Clearly invalid emails must not produce a 200 on sign-up.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> tests/property_tests.rs:128:1
[INFO] [stdout]     |
[INFO] [stdout] 128 | / /// `validate_token_format` accepts tokens that start with "session_" and
[INFO] [stdout] 129 | | /// are longer than 40 characters.
[INFO] [stdout]     | |_---------------------------------^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> tests/property_tests.rs:148:1
[INFO] [stdout]     |
[INFO] [stdout] 148 | /// Tokens that are too short or have the wrong prefix must be rejected.
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> tests/property_tests.rs:174:1
[INFO] [stdout]     |
[INFO] [stdout] 174 | /// Secret keys shorter than 32 characters must fail validation.
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> tests/property_tests.rs:187:1
[INFO] [stdout]     |
[INFO] [stdout] 187 | /// Secret keys of 32+ characters must pass validation.
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `EMAIL_COUNTER` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static EMAIL_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_email` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn unique_email(prefix: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SchemaExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SchemaExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FieldExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_openapi_spec` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn load_openapi_spec() -> oas3::spec::Spec {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_path_item` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub fn get_path_item<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_operation` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn get_operation<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resolve_object_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn resolve_object_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_from_response` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub fn schema_from_response(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_success_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn extract_success_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_expectation` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn object_schema_to_expectation(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_field` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn object_schema_to_field(spec: &oas3::spec::Spec, obj: &ObjectSchema) -> FieldExpectation {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_info` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn schema_type_info(obj: &ObjectSchema) -> (String, bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_to_string` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn schema_type_to_string(t: SchemaType) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn compare_shapes(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes_inner` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn compare_shapes_inner(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_fields` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn check_camel_case_fields(value: &Value, path: &str) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_inner` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn check_camel_case_inner(value: &Value, path: &str, violations: &mut Vec<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_type_signature` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn extract_type_signature(value: &Value, indent: usize) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingRequiredField`, `TypeMismatch`, and `SnakeCaseField` are never constructed
[INFO] [stdout]   --> tests/compat/validation.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum DiffKind {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 25 |     /// A required field is missing from the response
[INFO] [stdout] 26 |     MissingRequiredField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     /// A field has an unexpected type
[INFO] [stdout] 28 |     TypeMismatch { expected: String, actual: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     /// A field uses snake_case instead of camelCase
[INFO] [stdout] 30 |     SnakeCaseField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DiffKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_response` is never used
[INFO] [stdout]   --> tests/compat/validation.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn validate_response(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_field` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn validate_field(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `json_type_name` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn json_type_name(value: &Value) -> &'static str {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `spec` is never read
[INFO] [stdout]   --> tests/compat/validator.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SpecValidator {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 12 |     pub spec: oas3::spec::Spec,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `validate_endpoint`, and `report` are never used
[INFO] [stdout]   --> tests/compat/validator.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl SpecValidator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 57 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn validate_endpoint(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn report(&self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `EMAIL_COUNTER` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static EMAIL_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_email` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn unique_email(prefix: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_request` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn get_request(path: &str) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth_and_query` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn get_with_auth_and_query(path: &str, token: &str, query: Vec<(&str, &str)>) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_json_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn post_json_with_auth(path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SchemaExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SchemaExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FieldExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_openapi_spec` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn load_openapi_spec() -> oas3::spec::Spec {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_path_item` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub fn get_path_item<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_operation` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn get_operation<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resolve_object_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn resolve_object_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_from_response` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub fn schema_from_response(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_success_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn extract_success_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_expectation` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn object_schema_to_expectation(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_field` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn object_schema_to_field(spec: &oas3::spec::Spec, obj: &ObjectSchema) -> FieldExpectation {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_info` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn schema_type_info(obj: &ObjectSchema) -> (String, bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_to_string` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn schema_type_to_string(t: SchemaType) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_fields` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn check_camel_case_fields(value: &Value, path: &str) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_inner` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn check_camel_case_inner(value: &Value, path: &str, violations: &mut Vec<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_type_signature` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn extract_type_signature(value: &Value, indent: usize) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingRequiredField`, `TypeMismatch`, and `SnakeCaseField` are never constructed
[INFO] [stdout]   --> tests/compat/validation.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum DiffKind {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 25 |     /// A required field is missing from the response
[INFO] [stdout] 26 |     MissingRequiredField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     /// A field has an unexpected type
[INFO] [stdout] 28 |     TypeMismatch { expected: String, actual: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     /// A field uses snake_case instead of camelCase
[INFO] [stdout] 30 |     SnakeCaseField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DiffKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_response` is never used
[INFO] [stdout]   --> tests/compat/validation.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn validate_response(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_field` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn validate_field(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `spec` is never read
[INFO] [stdout]   --> tests/compat/validator.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SpecValidator {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 12 |     pub spec: oas3::spec::Spec,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `validate_endpoint`, and `report` are never used
[INFO] [stdout]   --> tests/compat/validator.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl SpecValidator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 57 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn validate_endpoint(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn report(&self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth_and_query` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn get_with_auth_and_query(path: &str, token: &str, query: Vec<(&str, &str)>) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signup_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:162:14
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub async fn signup_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signin_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:189:14
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub async fn signin_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SchemaExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SchemaExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FieldExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_openapi_spec` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn load_openapi_spec() -> oas3::spec::Spec {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_path_item` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub fn get_path_item<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_operation` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn get_operation<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resolve_object_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn resolve_object_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_from_response` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub fn schema_from_response(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_success_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn extract_success_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_expectation` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn object_schema_to_expectation(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_field` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn object_schema_to_field(spec: &oas3::spec::Spec, obj: &ObjectSchema) -> FieldExpectation {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_info` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn schema_type_info(obj: &ObjectSchema) -> (String, bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_to_string` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn schema_type_to_string(t: SchemaType) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn compare_shapes(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes_inner` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn compare_shapes_inner(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_fields` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn check_camel_case_fields(value: &Value, path: &str) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_inner` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn check_camel_case_inner(value: &Value, path: &str, violations: &mut Vec<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_type_signature` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn extract_type_signature(value: &Value, indent: usize) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingRequiredField`, `TypeMismatch`, and `SnakeCaseField` are never constructed
[INFO] [stdout]   --> tests/compat/validation.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum DiffKind {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 25 |     /// A required field is missing from the response
[INFO] [stdout] 26 |     MissingRequiredField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     /// A field has an unexpected type
[INFO] [stdout] 28 |     TypeMismatch { expected: String, actual: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     /// A field uses snake_case instead of camelCase
[INFO] [stdout] 30 |     SnakeCaseField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DiffKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_response` is never used
[INFO] [stdout]   --> tests/compat/validation.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn validate_response(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_field` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn validate_field(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `json_type_name` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn json_type_name(value: &Value) -> &'static str {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `spec` is never read
[INFO] [stdout]   --> tests/compat/validator.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SpecValidator {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 12 |     pub spec: oas3::spec::Spec,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `validate_endpoint`, and `report` are never used
[INFO] [stdout]   --> tests/compat/validator.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl SpecValidator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 57 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn validate_endpoint(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn report(&self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `better_auth::error`
[INFO] [stdout]  --> examples/custom_orm_adapter.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | use better_auth::error::{AuthError, AuthResult};
[INFO] [stdout]   |                  ^^^^^ could not find `error` in `better_auth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `create_user` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | /     async fn create_user(&self, create_user: CreateUser) -> AuthResult<User> {
[INFO] [stdout] 120 | |         let id = create_user.id.unwrap_or_else(|| Uuid::new_v4().to_string());
[INFO] [stdout] 121 | |         let now = Utc::now();
[INFO] [stdout] ...   |
[INFO] [stdout] 143 | |             .map_err(|e| AuthError::database(e))
[INFO] [stdout] 144 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `get_user_by_id` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 | /     async fn get_user_by_id(&self, id: &str) -> AuthResult<Option<User>> {
[INFO] [stdout] 147 | |         let users = self.users.lock().unwrap();
[INFO] [stdout] 148 | |         Ok(users.get(id).cloned())
[INFO] [stdout] 149 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `get_user_by_email` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 | /     async fn get_user_by_email(&self, email: &str) -> AuthResult<Option<User>> {
[INFO] [stdout] 152 | |         self.orm_find_user_by_email(email)
[INFO] [stdout] 153 | |             .await
[INFO] [stdout] 154 | |             .map_err(|e| AuthError::database(e))
[INFO] [stdout] 155 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `update_user` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 | /     async fn update_user(&self, id: &str, update: UpdateUser) -> AuthResult<User> {
[INFO] [stdout] 158 | |         let mut users = self.users.lock().unwrap();
[INFO] [stdout] 159 | |
[INFO] [stdout] 160 | |         let user = users
[INFO] [stdout] ...   |
[INFO] [stdout] 180 | |         Ok(user.clone())
[INFO] [stdout] 181 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `delete_user` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 | /     async fn delete_user(&self, id: &str) -> AuthResult<()> {
[INFO] [stdout] 184 | |         let mut users = self.users.lock().unwrap();
[INFO] [stdout] 185 | |         let mut email_index = self.email_index.lock().unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 193 | |         Ok(())
[INFO] [stdout] 194 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `create_session` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:196:5
[INFO] [stdout]     |
[INFO] [stdout] 196 | /     async fn create_session(&self, create_session: CreateSession) -> AuthResult<Session> {
[INFO] [stdout] 197 | |         let id = Uuid::new_v4().to_string();
[INFO] [stdout] 198 | |         let now = Utc::now();
[INFO] [stdout] ...   |
[INFO] [stdout] 213 | |             .map_err(|e| AuthError::database(e))
[INFO] [stdout] 214 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `get_session` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:216:5
[INFO] [stdout]     |
[INFO] [stdout] 216 | /     async fn get_session(&self, token: &str) -> AuthResult<Option<Session>> {
[INFO] [stdout] 217 | |         self.orm_find_session(token)
[INFO] [stdout] 218 | |             .await
[INFO] [stdout] 219 | |             .map_err(|e| AuthError::database(e))
[INFO] [stdout] 220 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `get_user_sessions` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:222:5
[INFO] [stdout]     |
[INFO] [stdout] 222 | /     async fn get_user_sessions(&self, user_id: &str) -> AuthResult<Vec<Session>> {
[INFO] [stdout] 223 | |         let sessions = self.sessions.lock().unwrap();
[INFO] [stdout] 224 | |         let user_sessions: Vec<Session> = sessions
[INFO] [stdout] 225 | |             .values()
[INFO] [stdout] ...   |
[INFO] [stdout] 229 | |         Ok(user_sessions)
[INFO] [stdout] 230 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `update_session_expiry` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:232:5
[INFO] [stdout]     |
[INFO] [stdout] 232 | /     async fn update_session_expiry(
[INFO] [stdout] 233 | |         &self,
[INFO] [stdout] 234 | |         token: &str,
[INFO] [stdout] 235 | |         expires_at: DateTime<Utc>,
[INFO] [stdout] ...   |
[INFO] [stdout] 244 | |         Ok(())
[INFO] [stdout] 245 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `delete_session` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:247:5
[INFO] [stdout]     |
[INFO] [stdout] 247 | /     async fn delete_session(&self, token: &str) -> AuthResult<()> {
[INFO] [stdout] 248 | |         let mut sessions = self.sessions.lock().unwrap();
[INFO] [stdout] 249 | |         sessions.remove(token);
[INFO] [stdout] 250 | |         Ok(())
[INFO] [stdout] 251 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `delete_user_sessions` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:253:5
[INFO] [stdout]     |
[INFO] [stdout] 253 | /     async fn delete_user_sessions(&self, user_id: &str) -> AuthResult<()> {
[INFO] [stdout] 254 | |         let mut sessions = self.sessions.lock().unwrap();
[INFO] [stdout] 255 | |         sessions.retain(|_, session| session.user_id != user_id);
[INFO] [stdout] 256 | |         Ok(())
[INFO] [stdout] 257 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `delete_expired_sessions` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:259:5
[INFO] [stdout]     |
[INFO] [stdout] 259 | /     async fn delete_expired_sessions(&self) -> AuthResult<usize> {
[INFO] [stdout] 260 | |         let mut sessions = self.sessions.lock().unwrap();
[INFO] [stdout] 261 | |         let now = Utc::now();
[INFO] [stdout] 262 | |         let initial_count = sessions.len();
[INFO] [stdout] 263 | |         sessions.retain(|_, session| session.expires_at > now);
[INFO] [stdout] 264 | |         Ok(initial_count - sessions.len())
[INFO] [stdout] 265 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `create_account` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:268:5
[INFO] [stdout]     |
[INFO] [stdout] 268 | /     async fn create_account(&self, _account: CreateAccount) -> AuthResult<Account> {
[INFO] [stdout] 269 | |         // Implement based on your OAuth needs
[INFO] [stdout] 270 | |         unimplemented!("OAuth accounts not implemented in this example")
[INFO] [stdout] 271 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `get_account` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:273:5
[INFO] [stdout]     |
[INFO] [stdout] 273 | /     async fn get_account(
[INFO] [stdout] 274 | |         &self,
[INFO] [stdout] 275 | |         _provider: &str,
[INFO] [stdout] 276 | |         _provider_account_id: &str,
[INFO] [stdout] 277 | |     ) -> AuthResult<Option<Account>> {
[INFO] [stdout] 278 | |         Ok(None)
[INFO] [stdout] 279 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `get_user_accounts` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:281:5
[INFO] [stdout]     |
[INFO] [stdout] 281 | /     async fn get_user_accounts(&self, _user_id: &str) -> AuthResult<Vec<Account>> {
[INFO] [stdout] 282 | |         Ok(vec![])
[INFO] [stdout] 283 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `delete_account` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 285 | /     async fn delete_account(&self, _id: &str) -> AuthResult<()> {
[INFO] [stdout] 286 | |         Ok(())
[INFO] [stdout] 287 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `create_verification` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 290 | /     async fn create_verification(
[INFO] [stdout] 291 | |         &self,
[INFO] [stdout] 292 | |         _verification: CreateVerification,
[INFO] [stdout] 293 | |     ) -> AuthResult<Verification> {
[INFO] [stdout] 294 | |         unimplemented!("Verifications not implemented in this example")
[INFO] [stdout] 295 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `get_verification` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:297:5
[INFO] [stdout]     |
[INFO] [stdout] 297 | /     async fn get_verification(&self, _id: &str) -> AuthResult<Option<Verification>> {
[INFO] [stdout] 298 | |         Ok(None)
[INFO] [stdout] 299 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `get_verification_by_value` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:301:5
[INFO] [stdout]     |
[INFO] [stdout] 301 | /     async fn get_verification_by_value(&self, _value: &str) -> AuthResult<Option<Verification>> {
[INFO] [stdout] 302 | |         Ok(None)
[INFO] [stdout] 303 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `delete_verification` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:305:5
[INFO] [stdout]     |
[INFO] [stdout] 305 | /     async fn delete_verification(&self, _id: &str) -> AuthResult<()> {
[INFO] [stdout] 306 | |         Ok(())
[INFO] [stdout] 307 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `delete_expired_verifications` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:309:5
[INFO] [stdout]     |
[INFO] [stdout] 309 | /     async fn delete_expired_verifications(&self) -> AuthResult<usize> {
[INFO] [stdout] 310 | |         Ok(0)
[INFO] [stdout] 311 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `create_credential` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:314:5
[INFO] [stdout]     |
[INFO] [stdout] 314 | /     async fn create_credential(&self, user_id: String, password_hash: String) -> AuthResult<()> {
[INFO] [stdout] 315 | |         let mut credentials = self.credentials.lock().unwrap();
[INFO] [stdout] 316 | |         credentials.insert(user_id, password_hash);
[INFO] [stdout] 317 | |         Ok(())
[INFO] [stdout] 318 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `get_credential` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:320:5
[INFO] [stdout]     |
[INFO] [stdout] 320 | /     async fn get_credential(&self, user_id: &str) -> AuthResult<Option<String>> {
[INFO] [stdout] 321 | |         let credentials = self.credentials.lock().unwrap();
[INFO] [stdout] 322 | |         Ok(credentials.get(user_id).cloned())
[INFO] [stdout] 323 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `update_credential` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:325:5
[INFO] [stdout]     |
[INFO] [stdout] 325 | /     async fn update_credential(&self, user_id: &str, password_hash: String) -> AuthResult<()> {
[INFO] [stdout] 326 | |         let mut credentials = self.credentials.lock().unwrap();
[INFO] [stdout] 327 | |         credentials.insert(user_id.to_string(), password_hash);
[INFO] [stdout] 328 | |         Ok(())
[INFO] [stdout] 329 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `delete_credential` is not a member of trait `DatabaseAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:331:5
[INFO] [stdout]     |
[INFO] [stdout] 331 | /     async fn delete_credential(&self, user_id: &str) -> AuthResult<()> {
[INFO] [stdout] 332 | |         let mut credentials = self.credentials.lock().unwrap();
[INFO] [stdout] 333 | |         credentials.remove(user_id);
[INFO] [stdout] 334 | |         Ok(())
[INFO] [stdout] 335 | |     }
[INFO] [stdout]     | |_____^ not a member of trait `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `diesel-example`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:339:7
[INFO] [stdout]     |
[INFO] [stdout] 339 | #[cfg(feature = "diesel-example")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `axum`, `default`, `derive`, `native-tls`, `redis-cache`, `rustls`, and `sqlx-postgres`
[INFO] [stdout]     = help: consider adding `diesel-example` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomORMAdapter: PasskeyOps` is not satisfied
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `PasskeyOps` is not implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub struct CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the trait `PasskeyOps` is implemented for `MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>`
[INFO] [stdout]    --> crates/core/src/adapters/memory.rs:971:1
[INFO] [stdout]     |
[INFO] [stdout] 971 | / impl<U, S, A, O, M, I, V, P> PasskeyOps for MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>
[INFO] [stdout] 972 | | where
[INFO] [stdout] 973 | |     U: MemoryUser,
[INFO] [stdout] 974 | |     S: MemorySession,
[INFO] [stdout] ...   |
[INFO] [stdout] 979 | |     V: MemoryVerification,
[INFO] [stdout] 980 | |     P: MemoryPasskey,
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] note: required by a bound in `DatabaseAdapter`
[INFO] [stdout]    --> crates/core/src/adapters/database.rs:24:7
[INFO] [stdout]     |
[INFO] [stdout]  14 | pub trait DatabaseAdapter:
[INFO] [stdout]     |           --------------- required by a bound in this trait
[INFO] [stdout] ...
[INFO] [stdout]  24 |     + PasskeyOps
[INFO] [stdout]     |       ^^^^^^^^^^ required by this bound in `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomORMAdapter: ApiKeyOps` is not satisfied
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `ApiKeyOps` is not implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub struct CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the following other types implement trait `ApiKeyOps`
[INFO] [stdout]    --> crates/core/src/hooks.rs:580:1
[INFO] [stdout]     |
[INFO] [stdout] 580 |   impl<DB: DatabaseAdapter> ApiKeyOps for HookedDatabaseAdapter<DB> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `HookedDatabaseAdapter<DB>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: crates/core/src/adapters/memory.rs:888:1
[INFO] [stdout]     |
[INFO] [stdout] 888 | / impl<U, S, A, O, M, I, V, P> ApiKeyOps for MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>
[INFO] [stdout] 889 | | where
[INFO] [stdout] 890 | |     U: MemoryUser,
[INFO] [stdout] 891 | |     S: MemorySession,
[INFO] [stdout] ...   |
[INFO] [stdout] 896 | |     V: MemoryVerification,
[INFO] [stdout] 897 | |     P: MemoryPasskey,
[INFO] [stdout]     | |_____________________^ `MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>`
[INFO] [stdout] note: required by a bound in `DatabaseAdapter`
[INFO] [stdout]    --> crates/core/src/adapters/database.rs:23:7
[INFO] [stdout]     |
[INFO] [stdout]  14 | pub trait DatabaseAdapter:
[INFO] [stdout]     |           --------------- required by a bound in this trait
[INFO] [stdout] ...
[INFO] [stdout]  23 |     + ApiKeyOps
[INFO] [stdout]     |       ^^^^^^^^^ required by this bound in `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomORMAdapter: TwoFactorOps` is not satisfied
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `TwoFactorOps` is not implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub struct CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the following other types implement trait `TwoFactorOps`
[INFO] [stdout]    --> crates/core/src/hooks.rs:550:1
[INFO] [stdout]     |
[INFO] [stdout] 550 |   impl<DB: DatabaseAdapter> TwoFactorOps for HookedDatabaseAdapter<DB> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `HookedDatabaseAdapter<DB>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: crates/core/src/adapters/memory.rs:825:1
[INFO] [stdout]     |
[INFO] [stdout] 825 | / impl<U, S, A, O, M, I, V, P> TwoFactorOps for MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>
[INFO] [stdout] 826 | | where
[INFO] [stdout] 827 | |     U: MemoryUser,
[INFO] [stdout] 828 | |     S: MemorySession,
[INFO] [stdout] ...   |
[INFO] [stdout] 833 | |     V: MemoryVerification,
[INFO] [stdout] 834 | |     P: MemoryPasskey,
[INFO] [stdout]     | |_____________________^ `MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>`
[INFO] [stdout] note: required by a bound in `DatabaseAdapter`
[INFO] [stdout]    --> crates/core/src/adapters/database.rs:22:7
[INFO] [stdout]     |
[INFO] [stdout]  14 | pub trait DatabaseAdapter:
[INFO] [stdout]     |           --------------- required by a bound in this trait
[INFO] [stdout] ...
[INFO] [stdout]  22 |     + TwoFactorOps
[INFO] [stdout]     |       ^^^^^^^^^^^^ required by this bound in `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomORMAdapter: InvitationOps` is not satisfied
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `InvitationOps` is not implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub struct CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the following other types implement trait `InvitationOps`
[INFO] [stdout]    --> crates/core/src/hooks.rs:503:1
[INFO] [stdout]     |
[INFO] [stdout] 503 |   impl<DB: DatabaseAdapter> InvitationOps for HookedDatabaseAdapter<DB> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `HookedDatabaseAdapter<DB>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: crates/core/src/adapters/memory.rs:744:1
[INFO] [stdout]     |
[INFO] [stdout] 744 | / impl<U, S, A, O, M, I, V, P> InvitationOps for MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>
[INFO] [stdout] 745 | | where
[INFO] [stdout] 746 | |     U: MemoryUser,
[INFO] [stdout] 747 | |     S: MemorySession,
[INFO] [stdout] ...   |
[INFO] [stdout] 752 | |     V: MemoryVerification,
[INFO] [stdout] 753 | |     P: MemoryPasskey,
[INFO] [stdout]     | |_____________________^ `MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>`
[INFO] [stdout] note: required by a bound in `DatabaseAdapter`
[INFO] [stdout]    --> crates/core/src/adapters/database.rs:21:7
[INFO] [stdout]     |
[INFO] [stdout]  14 | pub trait DatabaseAdapter:
[INFO] [stdout]     |           --------------- required by a bound in this trait
[INFO] [stdout] ...
[INFO] [stdout]  21 |     + InvitationOps
[INFO] [stdout]     |       ^^^^^^^^^^^^^ required by this bound in `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomORMAdapter: MemberOps` is not satisfied
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `MemberOps` is not implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub struct CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the following other types implement trait `MemberOps`
[INFO] [stdout]    --> crates/core/src/hooks.rs:459:1
[INFO] [stdout]     |
[INFO] [stdout] 459 |   impl<DB: DatabaseAdapter> MemberOps for HookedDatabaseAdapter<DB> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `HookedDatabaseAdapter<DB>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: crates/core/src/adapters/memory.rs:652:1
[INFO] [stdout]     |
[INFO] [stdout] 652 | / impl<U, S, A, O, M, I, V, P> MemberOps for MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>
[INFO] [stdout] 653 | | where
[INFO] [stdout] 654 | |     U: MemoryUser,
[INFO] [stdout] 655 | |     S: MemorySession,
[INFO] [stdout] ...   |
[INFO] [stdout] 660 | |     V: MemoryVerification,
[INFO] [stdout] 661 | |     P: MemoryPasskey,
[INFO] [stdout]     | |_____________________^ `MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>`
[INFO] [stdout] note: required by a bound in `DatabaseAdapter`
[INFO] [stdout]    --> crates/core/src/adapters/database.rs:20:7
[INFO] [stdout]     |
[INFO] [stdout]  14 | pub trait DatabaseAdapter:
[INFO] [stdout]     |           --------------- required by a bound in this trait
[INFO] [stdout] ...
[INFO] [stdout]  20 |     + MemberOps
[INFO] [stdout]     |       ^^^^^^^^^ required by this bound in `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomORMAdapter: OrganizationOps` is not satisfied
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `OrganizationOps` is not implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub struct CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the following other types implement trait `OrganizationOps`
[INFO] [stdout]    --> crates/core/src/hooks.rs:426:1
[INFO] [stdout]     |
[INFO] [stdout] 426 |   impl<DB: DatabaseAdapter> OrganizationOps for HookedDatabaseAdapter<DB> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `HookedDatabaseAdapter<DB>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: crates/core/src/adapters/memory.rs:540:1
[INFO] [stdout]     |
[INFO] [stdout] 540 | / impl<U, S, A, O, M, I, V, P> OrganizationOps for MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>
[INFO] [stdout] 541 | | where
[INFO] [stdout] 542 | |     U: MemoryUser,
[INFO] [stdout] 543 | |     S: MemorySession,
[INFO] [stdout] ...   |
[INFO] [stdout] 548 | |     V: MemoryVerification,
[INFO] [stdout] 549 | |     P: MemoryPasskey,
[INFO] [stdout]     | |_____________________^ `MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>`
[INFO] [stdout] note: required by a bound in `DatabaseAdapter`
[INFO] [stdout]    --> crates/core/src/adapters/database.rs:19:7
[INFO] [stdout]     |
[INFO] [stdout]  14 | pub trait DatabaseAdapter:
[INFO] [stdout]     |           --------------- required by a bound in this trait
[INFO] [stdout] ...
[INFO] [stdout]  19 |     + OrganizationOps
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^ required by this bound in `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomORMAdapter: VerificationOps` is not satisfied
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `VerificationOps` is not implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub struct CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the following other types implement trait `VerificationOps`
[INFO] [stdout]    --> crates/core/src/hooks.rs:364:1
[INFO] [stdout]     |
[INFO] [stdout] 364 |   impl<DB: DatabaseAdapter> VerificationOps for HookedDatabaseAdapter<DB> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `HookedDatabaseAdapter<DB>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: crates/core/src/adapters/memory.rs:445:1
[INFO] [stdout]     |
[INFO] [stdout] 445 | / impl<U, S, A, O, M, I, V, P> VerificationOps for MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>
[INFO] [stdout] 446 | | where
[INFO] [stdout] 447 | |     U: MemoryUser,
[INFO] [stdout] 448 | |     S: MemorySession,
[INFO] [stdout] ...   |
[INFO] [stdout] 453 | |     V: MemoryVerification,
[INFO] [stdout] 454 | |     P: MemoryPasskey,
[INFO] [stdout]     | |_____________________^ `MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>`
[INFO] [stdout] note: required by a bound in `DatabaseAdapter`
[INFO] [stdout]    --> crates/core/src/adapters/database.rs:18:7
[INFO] [stdout]     |
[INFO] [stdout]  14 | pub trait DatabaseAdapter:
[INFO] [stdout]     |           --------------- required by a bound in this trait
[INFO] [stdout] ...
[INFO] [stdout]  18 |     + VerificationOps
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^ required by this bound in `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomORMAdapter: AccountOps` is not satisfied
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `AccountOps` is not implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub struct CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the following other types implement trait `AccountOps`
[INFO] [stdout]    --> crates/core/src/hooks.rs:312:1
[INFO] [stdout]     |
[INFO] [stdout] 312 |   impl<DB: DatabaseAdapter> AccountOps for HookedDatabaseAdapter<DB> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `HookedDatabaseAdapter<DB>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: crates/core/src/adapters/memory.rs:381:1
[INFO] [stdout]     |
[INFO] [stdout] 381 | / impl<U, S, A, O, M, I, V, P> AccountOps for MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>
[INFO] [stdout] 382 | | where
[INFO] [stdout] 383 | |     U: MemoryUser,
[INFO] [stdout] 384 | |     S: MemorySession,
[INFO] [stdout] ...   |
[INFO] [stdout] 389 | |     V: MemoryVerification,
[INFO] [stdout] 390 | |     P: MemoryPasskey,
[INFO] [stdout]     | |_____________________^ `MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>`
[INFO] [stdout] note: required by a bound in `DatabaseAdapter`
[INFO] [stdout]    --> crates/core/src/adapters/database.rs:17:7
[INFO] [stdout]     |
[INFO] [stdout]  14 | pub trait DatabaseAdapter:
[INFO] [stdout]     |           --------------- required by a bound in this trait
[INFO] [stdout] ...
[INFO] [stdout]  17 |     + AccountOps
[INFO] [stdout]     |       ^^^^^^^^^^ required by this bound in `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomORMAdapter: SessionOps` is not satisfied
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `SessionOps` is not implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub struct CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the following other types implement trait `SessionOps`
[INFO] [stdout]    --> crates/core/src/hooks.rs:253:1
[INFO] [stdout]     |
[INFO] [stdout] 253 |   impl<DB: DatabaseAdapter> SessionOps for HookedDatabaseAdapter<DB> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `HookedDatabaseAdapter<DB>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: crates/core/src/adapters/memory.rs:293:1
[INFO] [stdout]     |
[INFO] [stdout] 293 | / impl<U, S, A, O, M, I, V, P> SessionOps for MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>
[INFO] [stdout] 294 | | where
[INFO] [stdout] 295 | |     U: MemoryUser,
[INFO] [stdout] 296 | |     S: MemorySession,
[INFO] [stdout] ...   |
[INFO] [stdout] 301 | |     V: MemoryVerification,
[INFO] [stdout] 302 | |     P: MemoryPasskey,
[INFO] [stdout]     | |_____________________^ `MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>`
[INFO] [stdout] note: required by a bound in `DatabaseAdapter`
[INFO] [stdout]    --> crates/core/src/adapters/database.rs:16:7
[INFO] [stdout]     |
[INFO] [stdout]  14 | pub trait DatabaseAdapter:
[INFO] [stdout]     |           --------------- required by a bound in this trait
[INFO] [stdout]  15 |     UserOps
[INFO] [stdout]  16 |     + SessionOps
[INFO] [stdout]     |       ^^^^^^^^^^ required by this bound in `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomORMAdapter: UserOps` is not satisfied
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `UserOps` is not implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub struct CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the following other types implement trait `UserOps`
[INFO] [stdout]    --> crates/core/src/hooks.rs:207:1
[INFO] [stdout]     |
[INFO] [stdout] 207 |   impl<DB: DatabaseAdapter> UserOps for HookedDatabaseAdapter<DB> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `HookedDatabaseAdapter<DB>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: crates/core/src/adapters/memory.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout]  98 | / impl<U, S, A, O, M, I, V, P> UserOps for MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>
[INFO] [stdout]  99 | | where
[INFO] [stdout] 100 | |     U: MemoryUser,
[INFO] [stdout] 101 | |     S: MemorySession,
[INFO] [stdout] ...   |
[INFO] [stdout] 106 | |     V: MemoryVerification,
[INFO] [stdout] 107 | |     P: MemoryPasskey,
[INFO] [stdout]     | |_____________________^ `MemoryDatabaseAdapter<U, S, A, O, M, I, V, P>`
[INFO] [stdout] note: required by a bound in `DatabaseAdapter`
[INFO] [stdout]    --> crates/core/src/adapters/database.rs:15:5
[INFO] [stdout]     |
[INFO] [stdout]  14 | pub trait DatabaseAdapter:
[INFO] [stdout]     |           --------------- required by a bound in this trait
[INFO] [stdout]  15 |     UserOps
[INFO] [stdout]     |     ^^^^^^^ required by this bound in `DatabaseAdapter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_request` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn get_request(path: &str) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:93:8
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn get_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth_and_query` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn get_with_auth_and_query(path: &str, token: &str, query: Vec<(&str, &str)>) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_json_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn post_json_with_auth(path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signup_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:162:14
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub async fn signup_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signin_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:189:14
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub async fn signin_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SchemaExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SchemaExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FieldExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_openapi_spec` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn load_openapi_spec() -> oas3::spec::Spec {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_path_item` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub fn get_path_item<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_operation` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn get_operation<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resolve_object_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn resolve_object_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_from_response` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub fn schema_from_response(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_success_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn extract_success_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_expectation` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn object_schema_to_expectation(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_field` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn object_schema_to_field(spec: &oas3::spec::Spec, obj: &ObjectSchema) -> FieldExpectation {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_info` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn schema_type_info(obj: &ObjectSchema) -> (String, bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_to_string` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn schema_type_to_string(t: SchemaType) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn compare_shapes(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes_inner` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn compare_shapes_inner(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_fields` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn check_camel_case_fields(value: &Value, path: &str) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_inner` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn check_camel_case_inner(value: &Value, path: &str, violations: &mut Vec<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_type_signature` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn extract_type_signature(value: &Value, indent: usize) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingRequiredField`, `TypeMismatch`, and `SnakeCaseField` are never constructed
[INFO] [stdout]   --> tests/compat/validation.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum DiffKind {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 25 |     /// A required field is missing from the response
[INFO] [stdout] 26 |     MissingRequiredField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     /// A field has an unexpected type
[INFO] [stdout] 28 |     TypeMismatch { expected: String, actual: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     /// A field uses snake_case instead of camelCase
[INFO] [stdout] 30 |     SnakeCaseField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DiffKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_response` is never used
[INFO] [stdout]   --> tests/compat/validation.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn validate_response(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_field` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn validate_field(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `json_type_name` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn json_type_name(value: &Value) -> &'static str {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `spec` is never read
[INFO] [stdout]   --> tests/compat/validator.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SpecValidator {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 12 |     pub spec: oas3::spec::Spec,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `validate_endpoint`, and `report` are never used
[INFO] [stdout]   --> tests/compat/validator.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl SpecValidator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 57 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn validate_endpoint(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn report(&self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `EMAIL_COUNTER` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static EMAIL_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_email` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn unique_email(prefix: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth_and_query` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn get_with_auth_and_query(path: &str, token: &str, query: Vec<(&str, &str)>) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signin_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:189:14
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub async fn signin_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn compare_shapes(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes_inner` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn compare_shapes_inner(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_type_signature` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn extract_type_signature(value: &Value, indent: usize) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `token` on type `better_auth::CreateSession`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:202:35
[INFO] [stdout]     |
[INFO] [stdout] 202 |             token: create_session.token,
[INFO] [stdout]     |                                   ^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `user_id`, `expires_at`, `ip_address`, `user_agent`, `impersonated_by`, `active_organization_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing fields `active`, `active_organization_id` and `impersonated_by` in initializer of `better_auth::Session`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:200:23
[INFO] [stdout]     |
[INFO] [stdout] 200 |         let session = Session {
[INFO] [stdout]     |                       ^^^^^^^ missing `active`, `active_organization_id` and `impersonated_by`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `better_auth::adapters::SqlxAdapter`
[INFO] [stdout]   --> examples/shared_sqlx_pool.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | use better_auth::adapters::SqlxAdapter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^-----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            no `SqlxAdapter` in `adapters`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> src/lib.rs:76:32
[INFO] [stdout]    |
[INFO] [stdout] 74 |     #[cfg(feature = "sqlx-postgres")]
[INFO] [stdout]    |           ------------------------- the item is gated behind the `sqlx-postgres` feature
[INFO] [stdout] 75 |     pub use better_auth_core::adapters::database::sqlx_adapter::{
[INFO] [stdout] 76 |         PoolConfig, PoolStats, SqlxAdapter, SqlxEntity,
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]   --> examples/shared_sqlx_pool.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use sqlx::postgres::{PgPool, PgPoolOptions};
[INFO] [stdout]    |     ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `sqlx`
[INFO] [stdout]   --> examples/shared_sqlx_pool.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use sqlx::FromRow;
[INFO] [stdout]    |     ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:270:19
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let row = sqlx::query!(
[INFO] [stdout]     |                   ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:404:16
[INFO] [stdout]     |
[INFO] [stdout] 404 |     let auth = BetterAuth::new(config)
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ cannot infer type of the type parameter `DB` declared on the struct `BetterAuth`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type must implement `DatabaseAdapter`
[INFO] [stdout] help: the trait `DatabaseAdapter` is implemented for `CustomORMAdapter`
[INFO] [stdout]    --> examples/custom_orm_adapter.rs:118:1
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl DatabaseAdapter for CustomORMAdapter {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `BetterAuth`
[INFO] [stdout]    --> src/core/auth.rs:24:27
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub struct BetterAuth<DB: DatabaseAdapter> {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ required by this bound in `BetterAuth`
[INFO] [stdout] help: consider specifying a concrete type for the type parameter `DB`
[INFO] [stdout]     |
[INFO] [stdout] 404 |     let auth = BetterAuth::</* Type */>::new(config)
[INFO] [stdout]     |                          ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0063, E0277, E0283, E0407, E0432, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0063`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `better-auth` (example "custom_orm_adapter") due to 39 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: static `EMAIL_COUNTER` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static EMAIL_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_email` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn unique_email(prefix: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_secret` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn test_secret() -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_config` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn test_config() -> AuthConfig {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_test_auth` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub async fn create_test_auth() -> BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_json` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn post_json(path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_request` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn get_request(path: &str) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:93:8
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn get_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth_and_query` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn get_with_auth_and_query(path: &str, token: &str, query: Vec<(&str, &str)>) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_json_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn post_json_with_auth(path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_request` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:148:14
[INFO] [stdout]     |
[INFO] [stdout] 148 | pub async fn send_request(
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signup_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:162:14
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub async fn signup_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signin_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:189:14
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub async fn signin_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `required_fields` is never read
[INFO] [stdout]   --> tests/compat/schema.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SchemaExpectation {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub required_fields: BTreeSet<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SchemaExpectation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `field_type`, `nullable`, `nested`, and `items` are never read
[INFO] [stdout]   --> tests/compat/schema.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FieldExpectation {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 22 |     /// JSON type: "string", "boolean", "number", "object", "array", "null", "date"
[INFO] [stdout] 23 |     pub field_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 24 |     /// Whether the field can be null
[INFO] [stdout] 25 |     pub nullable: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 26 |     /// Nested schema (for objects)
[INFO] [stdout] 27 |     pub nested: Option<SchemaExpectation>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 28 |     /// Item schema (for arrays)
[INFO] [stdout] 29 |     pub items: Option<Box<FieldExpectation>>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldExpectation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingRequiredField`, `TypeMismatch`, and `SnakeCaseField` are never constructed
[INFO] [stdout]   --> tests/compat/validation.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum DiffKind {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 25 |     /// A required field is missing from the response
[INFO] [stdout] 26 |     MissingRequiredField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     /// A field has an unexpected type
[INFO] [stdout] 28 |     TypeMismatch { expected: String, actual: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     /// A field uses snake_case instead of camelCase
[INFO] [stdout] 30 |     SnakeCaseField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DiffKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_response` is never used
[INFO] [stdout]   --> tests/compat/validation.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn validate_response(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_field` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn validate_field(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `spec` is never read
[INFO] [stdout]   --> tests/compat/validator.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SpecValidator {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 12 |     pub spec: oas3::spec::Spec,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `validate_endpoint`, and `report` are never used
[INFO] [stdout]   --> tests/compat/validator.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl SpecValidator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 57 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn validate_endpoint(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn report(&self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `EMAIL_COUNTER` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static EMAIL_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_email` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn unique_email(prefix: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth_and_query` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn get_with_auth_and_query(path: &str, token: &str, query: Vec<(&str, &str)>) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_json_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn post_json_with_auth(path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SchemaExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SchemaExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FieldExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_openapi_spec` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn load_openapi_spec() -> oas3::spec::Spec {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_path_item` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub fn get_path_item<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_operation` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn get_operation<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resolve_object_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn resolve_object_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_from_response` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub fn schema_from_response(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_success_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn extract_success_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_expectation` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn object_schema_to_expectation(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_field` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn object_schema_to_field(spec: &oas3::spec::Spec, obj: &ObjectSchema) -> FieldExpectation {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_info` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn schema_type_info(obj: &ObjectSchema) -> (String, bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_to_string` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn schema_type_to_string(t: SchemaType) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn compare_shapes(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes_inner` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn compare_shapes_inner(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingRequiredField`, `TypeMismatch`, and `SnakeCaseField` are never constructed
[INFO] [stdout]   --> tests/compat/validation.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum DiffKind {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 25 |     /// A required field is missing from the response
[INFO] [stdout] 26 |     MissingRequiredField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     /// A field has an unexpected type
[INFO] [stdout] 28 |     TypeMismatch { expected: String, actual: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     /// A field uses snake_case instead of camelCase
[INFO] [stdout] 30 |     SnakeCaseField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DiffKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_response` is never used
[INFO] [stdout]   --> tests/compat/validation.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn validate_response(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_field` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn validate_field(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `spec` is never read
[INFO] [stdout]   --> tests/compat/validator.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SpecValidator {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 12 |     pub spec: oas3::spec::Spec,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `validate_endpoint`, and `report` are never used
[INFO] [stdout]   --> tests/compat/validator.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl SpecValidator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 57 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn validate_endpoint(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn report(&self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `EMAIL_COUNTER` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static EMAIL_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_email` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn unique_email(prefix: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_request` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn get_request(path: &str) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth_and_query` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn get_with_auth_and_query(path: &str, token: &str, query: Vec<(&str, &str)>) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signin_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:189:14
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub async fn signin_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn compare_shapes(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes_inner` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn compare_shapes_inner(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_fields` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn check_camel_case_fields(value: &Value, path: &str) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_inner` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn check_camel_case_inner(value: &Value, path: &str, violations: &mut Vec<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_type_signature` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn extract_type_signature(value: &Value, indent: usize) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `EMAIL_COUNTER` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static EMAIL_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_email` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn unique_email(prefix: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_json` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn post_json(path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_request` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn get_request(path: &str) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:93:8
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn get_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth_and_query` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn get_with_auth_and_query(path: &str, token: &str, query: Vec<(&str, &str)>) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_json_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn post_json_with_auth(path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_request` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:148:14
[INFO] [stdout]     |
[INFO] [stdout] 148 | pub async fn send_request(
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signup_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:162:14
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub async fn signup_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signin_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:189:14
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub async fn signin_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SchemaExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SchemaExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FieldExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_path_item` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub fn get_path_item<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_operation` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn get_operation<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resolve_object_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn resolve_object_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_from_response` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub fn schema_from_response(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_success_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn extract_success_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_expectation` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn object_schema_to_expectation(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_field` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn object_schema_to_field(spec: &oas3::spec::Spec, obj: &ObjectSchema) -> FieldExpectation {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_info` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn schema_type_info(obj: &ObjectSchema) -> (String, bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_to_string` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn schema_type_to_string(t: SchemaType) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn compare_shapes(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes_inner` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn compare_shapes_inner(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_fields` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn check_camel_case_fields(value: &Value, path: &str) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_inner` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn check_camel_case_inner(value: &Value, path: &str, violations: &mut Vec<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_type_signature` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn extract_type_signature(value: &Value, indent: usize) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingRequiredField`, `TypeMismatch`, and `SnakeCaseField` are never constructed
[INFO] [stdout]   --> tests/compat/validation.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum DiffKind {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 25 |     /// A required field is missing from the response
[INFO] [stdout] 26 |     MissingRequiredField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     /// A field has an unexpected type
[INFO] [stdout] 28 |     TypeMismatch { expected: String, actual: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     /// A field uses snake_case instead of camelCase
[INFO] [stdout] 30 |     SnakeCaseField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DiffKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_response` is never used
[INFO] [stdout]   --> tests/compat/validation.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn validate_response(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_field` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn validate_field(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `json_type_name` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn json_type_name(value: &Value) -> &'static str {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `spec` is never read
[INFO] [stdout]   --> tests/compat/validator.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SpecValidator {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 12 |     pub spec: oas3::spec::Spec,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `validate_endpoint`, and `report` are never used
[INFO] [stdout]   --> tests/compat/validator.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl SpecValidator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 57 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn validate_endpoint(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn report(&self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `EMAIL_COUNTER` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static EMAIL_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_email` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn unique_email(prefix: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth_and_query` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn get_with_auth_and_query(path: &str, token: &str, query: Vec<(&str, &str)>) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signin_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:189:14
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub async fn signin_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SchemaExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SchemaExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FieldExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_openapi_spec` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn load_openapi_spec() -> oas3::spec::Spec {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_path_item` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub fn get_path_item<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_operation` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn get_operation<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resolve_object_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn resolve_object_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_from_response` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub fn schema_from_response(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_success_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn extract_success_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_expectation` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn object_schema_to_expectation(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_field` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn object_schema_to_field(spec: &oas3::spec::Spec, obj: &ObjectSchema) -> FieldExpectation {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_info` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn schema_type_info(obj: &ObjectSchema) -> (String, bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_to_string` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn schema_type_to_string(t: SchemaType) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn compare_shapes(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes_inner` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn compare_shapes_inner(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_fields` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn check_camel_case_fields(value: &Value, path: &str) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_inner` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn check_camel_case_inner(value: &Value, path: &str, violations: &mut Vec<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_type_signature` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn extract_type_signature(value: &Value, indent: usize) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingRequiredField`, `TypeMismatch`, and `SnakeCaseField` are never constructed
[INFO] [stdout]   --> tests/compat/validation.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum DiffKind {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 25 |     /// A required field is missing from the response
[INFO] [stdout] 26 |     MissingRequiredField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     /// A field has an unexpected type
[INFO] [stdout] 28 |     TypeMismatch { expected: String, actual: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     /// A field uses snake_case instead of camelCase
[INFO] [stdout] 30 |     SnakeCaseField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DiffKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_response` is never used
[INFO] [stdout]   --> tests/compat/validation.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn validate_response(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_field` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn validate_field(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `json_type_name` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn json_type_name(value: &Value) -> &'static str {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `spec` is never read
[INFO] [stdout]   --> tests/compat/validator.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SpecValidator {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 12 |     pub spec: oas3::spec::Spec,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `validate_endpoint`, and `report` are never used
[INFO] [stdout]   --> tests/compat/validator.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl SpecValidator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 57 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn validate_endpoint(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn report(&self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `EMAIL_COUNTER` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static EMAIL_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_email` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn unique_email(prefix: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_request` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn get_request(path: &str) -> AuthRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `post_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn post_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signin_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:189:14
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub async fn signin_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestHarness` is never constructed
[INFO] [stdout]    --> tests/compat/helpers.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct TestHarness {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn minimal() -> Self {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn into_arc(self) -> Arc<BetterAuth<MemoryDatabaseAdapter>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn compare_shapes(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes_inner` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn compare_shapes_inner(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_type_signature` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn extract_type_signature(value: &Value, indent: usize) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: missing generics for struct `BetterAuth`
[INFO] [stdout]   --> examples/shared_sqlx_pool.rs:45:15
[INFO] [stdout]    |
[INFO] [stdout] 45 |     auth: Arc<BetterAuth>,
[INFO] [stdout]    |               ^^^^^^^^^^ expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: struct defined here, with 1 generic parameter: `DB`
[INFO] [stdout]   --> src/core/auth.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct BetterAuth<DB: DatabaseAdapter> {
[INFO] [stdout]    |            ^^^^^^^^^^ --
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 45 |     auth: Arc<BetterAuth<DB>>,
[INFO] [stdout]    |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> crates/api/src/plugins/ghost_user/mod.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |         ctx: &AuthContext<DB>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]   --> examples/shared_sqlx_pool.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         sqlx::query(
[INFO] [stdout]    |         ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |         sqlx::query(
[INFO] [stdout]     |         ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 133 |         sqlx::query(
[INFO] [stdout]     |         ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:148:9
[INFO] [stdout]     |
[INFO] [stdout] 148 |         sqlx::query(
[INFO] [stdout]     |         ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |         sqlx::query(
[INFO] [stdout]     |         ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |         sqlx::query("CREATE INDEX IF NOT EXISTS idx_sessions_user_id ON sessions(user_id);")
[INFO] [stdout]     |         ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         sqlx::query("CREATE INDEX IF NOT EXISTS idx_sessions_token ON sessions(token);")
[INFO] [stdout]     |         ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |         sqlx::query("CREATE INDEX IF NOT EXISTS idx_credentials_user_id ON credentials(user_id);")
[INFO] [stdout]     |         ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:189:9
[INFO] [stdout]     |
[INFO] [stdout] 189 |         sqlx::query("CREATE INDEX IF NOT EXISTS idx_posts_user_id ON posts(user_id);")
[INFO] [stdout]     |         ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         sqlx::query("CREATE INDEX IF NOT EXISTS idx_posts_published ON posts(published);")
[INFO] [stdout]     |         ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:208:23
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let profile = sqlx::query_as::<_, UserProfile>(
[INFO] [stdout]     |                       ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:239:20
[INFO] [stdout]     |
[INFO] [stdout] 239 |         let post = sqlx::query_as::<_, Post>(
[INFO] [stdout]     |                    ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:258:21
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let posts = sqlx::query_as::<_, Post>(
[INFO] [stdout]     |                     ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:299:31
[INFO] [stdout]     |
[INFO] [stdout] 299 |         let user_count: i64 = sqlx::query_scalar("SELECT COUNT(*) FROM users")
[INFO] [stdout]     |                               ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:303:34
[INFO] [stdout]     |
[INFO] [stdout] 303 |         let session_count: i64 = sqlx::query_scalar("SELECT COUNT(*) FROM sessions")
[INFO] [stdout]     |                                  ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:307:31
[INFO] [stdout]     |
[INFO] [stdout] 307 |         let post_count: i64 = sqlx::query_scalar("SELECT COUNT(*) FROM posts")
[INFO] [stdout]     |                               ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]   --> examples/shared_sqlx_pool.rs:88:58
[INFO] [stdout]    |
[INFO] [stdout] 88 |     async fn run_migrations(pool: &PgPool) -> Result<(), sqlx::Error> {
[INFO] [stdout]    |                                                          ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:236:23
[INFO] [stdout]     |
[INFO] [stdout] 236 |     ) -> Result<Post, sqlx::Error> {
[INFO] [stdout]     |                       ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:257:72
[INFO] [stdout]     |
[INFO] [stdout] 257 |     async fn get_user_posts(&self, user_id: &str) -> Result<Vec<Post>, sqlx::Error> {
[INFO] [stdout]     |                                                                        ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:207:30
[INFO] [stdout]     |
[INFO] [stdout] 207 |     ) -> Result<UserProfile, sqlx::Error> {
[INFO] [stdout]     |                              ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:298:60
[INFO] [stdout]     |
[INFO] [stdout] 298 |     async fn get_stats(&self) -> Result<serde_json::Value, sqlx::Error> {
[INFO] [stdout]     |                                                            ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `sqlx` in this scope
[INFO] [stdout]    --> examples/shared_sqlx_pool.rs:269:87
[INFO] [stdout]     |
[INFO] [stdout] 269 |     async fn get_user_with_profile(&self, user_id: &str) -> Result<serde_json::Value, sqlx::Error> {
[INFO] [stdout]     |                                                                                       ^^^^ use of unresolved module or unlinked crate `sqlx`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `sqlx`, use `cargo add sqlx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `better-auth` (example "shared_sqlx_pool") due to 27 previous errors
[INFO] [stdout] warning: static `EMAIL_COUNTER` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static EMAIL_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_email` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn unique_email(prefix: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_secret` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn test_secret() -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_config` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn test_config() -> AuthConfig {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_test_auth` is never used
[INFO] [stdout]   --> tests/compat/helpers.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub async fn create_test_auth() -> BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_with_auth_and_query` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn get_with_auth_and_query(path: &str, token: &str, query: Vec<(&str, &str)>) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_with_auth` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn delete_with_auth(path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signup_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:162:14
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub async fn signup_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signin_user` is never used
[INFO] [stdout]    --> tests/compat/helpers.rs:189:14
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub async fn signin_user(
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/compat/helpers.rs:235:18
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl TestHarness {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub async fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn from_arc(auth: Arc<BetterAuth<MemoryDatabaseAdapter>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn auth(&self) -> &BetterAuth<MemoryDatabaseAdapter> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get(&self, path: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub fn authed_get(&self, path: &str, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn post(&self, path: &str, body: Value) -> AuthRequest {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn authed_post(&self, path: &str, body: Value, token: &str) -> AuthRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub async fn send(&self, req: AuthRequest) -> (u16, Value) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn signup(&self, email: &str, password: &str, name: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn signin(&self, email: &str, password: &str) -> (String, Value) {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub async fn create_user_with_session(&self) -> (String, String) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SchemaExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SchemaExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldExpectation` is never constructed
[INFO] [stdout]   --> tests/compat/schema.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FieldExpectation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_openapi_spec` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn load_openapi_spec() -> oas3::spec::Spec {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_path_item` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub fn get_path_item<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_operation` is never used
[INFO] [stdout]   --> tests/compat/schema.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn get_operation<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resolve_object_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn resolve_object_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_from_response` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub fn schema_from_response(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_success_schema` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn extract_success_schema(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_error_schemas` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn extract_error_schemas(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_expectation` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn object_schema_to_expectation(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_schema_to_field` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn object_schema_to_field(spec: &oas3::spec::Spec, obj: &ObjectSchema) -> FieldExpectation {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_info` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn schema_type_info(obj: &ObjectSchema) -> (String, bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schema_type_to_string` is never used
[INFO] [stdout]    --> tests/compat/schema.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn schema_type_to_string(t: SchemaType) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn compare_shapes(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_shapes_inner` is never used
[INFO] [stdout]   --> tests/compat/shapes.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn compare_shapes_inner(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_fields` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn check_camel_case_fields(value: &Value, path: &str) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_camel_case_inner` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn check_camel_case_inner(value: &Value, path: &str, violations: &mut Vec<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_type_signature` is never used
[INFO] [stdout]    --> tests/compat/shapes.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn extract_type_signature(value: &Value, indent: usize) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingRequiredField`, `TypeMismatch`, and `SnakeCaseField` are never constructed
[INFO] [stdout]   --> tests/compat/validation.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum DiffKind {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 25 |     /// A required field is missing from the response
[INFO] [stdout] 26 |     MissingRequiredField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     /// A field has an unexpected type
[INFO] [stdout] 28 |     TypeMismatch { expected: String, actual: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     /// A field uses snake_case instead of camelCase
[INFO] [stdout] 30 |     SnakeCaseField,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DiffKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_response` is never used
[INFO] [stdout]   --> tests/compat/validation.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn validate_response(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_field` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn validate_field(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `json_type_name` is never used
[INFO] [stdout]    --> tests/compat/validation.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn json_type_name(value: &Value) -> &'static str {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `spec` is never read
[INFO] [stdout]   --> tests/compat/validator.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SpecValidator {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 12 |     pub spec: oas3::spec::Spec,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `validate_endpoint`, and `report` are never used
[INFO] [stdout]   --> tests/compat/validator.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl SpecValidator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 57 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn validate_endpoint(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn report(&self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "cdfd997c649fe0d68bc0e5071c6c120024792b791515482c680ace43fdfc5aef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cdfd997c649fe0d68bc0e5071c6c120024792b791515482c680ace43fdfc5aef", kill_on_drop: false }`
[INFO] [stdout] cdfd997c649fe0d68bc0e5071c6c120024792b791515482c680ace43fdfc5aef
